/**
 * 教师类：继承Person父类
 */
public class Teacher extends Person {
    // 子类特有属性（protected修饰：子类可访问）
    protected String courseId;  // 所授课程编号

    // 子类构造方法：通过super()调用父类构造
    public Teacher(String id, String name, String gender) {
        super(id, name, gender);  // 调用父类构造初始化共性属性
    }

    // 教师特有方法：绑定所授课程
    public void setCourseId(String courseId) {
        this.courseId = courseId;
    }

    // 重写父类方法：打印教师授课信息
    @Override
    public void printWorkSheet() {
        super.printWorkSheet();  // 复用父类基础信息打印逻辑
        System.out.println("身份：教师");
        System.out.println("所授课程编号：" + (courseId == null ? "未开课" : courseId));
        System.out.println("=============\n");
    }

    // Getter方法：供外部访问protected属性
    public String getCourseId() {
        return courseId;
    }
}